User Authentication এবং Authorization কনফিগার করা

Java Technologies - অ্যাপাচি নিফাই (Apache NiFi) NiFi Security এবং Access Control |
110
110

অ্যাপাচি নিফাই (Apache NiFi) একটি শক্তিশালী ডেটা প্রবাহ অটোমেশন প্ল্যাটফর্ম, যা নিরাপত্তা নিশ্চিত করার জন্য ইউজার অথেন্টিকেশন এবং অথোরাইজেশন কনফিগারেশন সাপোর্ট করে। এর মাধ্যমে আপনি ইউজারের প্রবেশাধিকার নিয়ন্ত্রণ এবং নির্দিষ্ট ফাংশনালিটিতে অ্যাক্সেস সীমিত করতে পারেন। এই গাইডে আমরা দেখব কীভাবে NiFi তে ইউজার অথেন্টিকেশন এবং অথোরাইজেশন কনফিগার করা যায়।

১. NiFi Authentication কনফিগারেশন

NiFi তে ইউজার অথেন্টিকেশন কনফিগার করতে হলে, সাধারণত দুটি পদ্ধতি ব্যবহার করা হয়:

  1. LDAP Authentication
  2. Single Sign-On (SSO) - Kerberos

১.১ LDAP Authentication কনফিগারেশন

LDAP (Lightweight Directory Access Protocol) একটি সাধারণ অথেন্টিকেশন সিস্টেম, যা ডিরেক্টরি সার্ভারের মাধ্যমে ইউজার অথেন্টিকেশন পরিচালনা করে। NiFi তে LDAP কনফিগারেশন করতে নিম্নলিখিত পদক্ষেপগুলো অনুসরণ করুন:

  1. nifi.properties ফাইলে LDAP কনফিগারেশন nifi.properties ফাইলের মধ্যে LDAP সংক্রান্ত সঠিক সেটিংস যোগ করতে হবে।

    nifi.security.user.authorizer=org.apache.nifi.authorization.LdapUserGroupProvider
    nifi.security.user.ldap.url=ldap://<LDAP-Server-URL>:<Port>
    nifi.security.user.ldap.bind DN=<bind-user-dn>
    nifi.security.user.ldap.bind.password=<bind-password>
    nifi.security.user.ldap.user.dn.pattern=<user-dn-pattern>
    nifi.security.user.ldap.group.dn.pattern=<group-dn-pattern>
    nifi.security.user.ldap.group.search.base=<group-search-base>
    
  2. LDAP কনফিগারেশন বিষয়সমূহ:
    • nifi.security.user.ldap.url: LDAP সার্ভারের URL এবং পোর্ট নম্বর।
    • nifi.security.user.ldap.bind DN: ইউজারের জন্য বাইন্ড DN (ডিরেক্টরি সার্ভার ইউজার নাম)।
    • nifi.security.user.ldap.bind.password: বাইন্ড DN এর জন্য পাসওয়ার্ড।
    • nifi.security.user.ldap.user.dn.pattern: ইউজারের DN প্যাটার্ন (যেমন, uid={0},ou=users,dc=example,dc=com)।
    • nifi.security.user.ldap.group.dn.pattern: গ্রুপের DN প্যাটার্ন।
    • nifi.security.user.ldap.group.search.base: গ্রুপ সার্চের জন্য বেস DN।

১.২ Kerberos Authentication কনফিগারেশন

Kerberos, বিশেষভাবে বড় স্কেল পরিবেশে একাধিক সিস্টেমে নিরাপদ অথেন্টিকেশন নিশ্চিত করার জন্য ব্যবহৃত হয়। NiFi তে Kerberos সন্নিবেশ করতে নিম্নলিখিত কনফিগারেশন ব্যবহার করা হয়:

  1. nifi.properties ফাইল কনফিগারেশন:

    nifi.security.user.authentication.kerberos=true
    nifi.security.kerberos.service.principal=<NiFi-Service-Principal>
    nifi.security.kerberos.keytab.location=<Path-to-Keytab>
    
  2. Kerberos সম্পর্কিত বিষয়সমূহ:
    • nifi.security.kerberos.service.principal: NiFi সার্ভিস প্রিন্সিপাল নাম (যেমন, nifi/hostname@REALM.COM)।
    • nifi.security.kerberos.keytab.location: Keytab ফাইলের পাথ, যা Kerberos প্রিন্সিপাল ব্যবহার করে অথেন্টিকেশন নিশ্চিত করে।

২. NiFi Authorization কনফিগারেশন

NiFi তে ইউজার অথোরাইজেশন কনফিগার করার জন্য, দুটি প্রধান উপাদান ব্যবহার করা হয়: Authorizers এবং Policies

২.১ NiFi Authorizers কনফিগারেশন

NiFi তে ইউজারের জন্য অটোরাইজেশন সিস্টেম কনফিগার করার জন্য authorizers.xml ফাইলটি ব্যবহার করা হয়। এই ফাইলে ইউজার গ্রুপ এবং রিসোর্স অ্যাক্সেস পলিসি নির্ধারণ করা হয়।

  1. authorizers.xml ফাইলে কনফিগারেশন: এই ফাইলটি NiFi ইনস্টলেশনের conf ডিরেক্টরিতে থাকে।

    উদাহরণ কনফিগারেশন:

    <authorizers>
        <userGroupProvider>
            <ldapUserGroupProvider>
                <url>ldap://<LDAP-Server-URL></url>
                <bindDn>uid=admin,ou=users,dc=example,dc=com</bindDn>
                <password>password</password>
                <userSearchBase>ou=users,dc=example,dc=com</userSearchBase>
                <groupSearchBase>ou=groups,dc=example,dc=com</groupSearchBase>
            </ldapUserGroupProvider>
        </userGroupProvider>
        <policyProvider>
            <ldapPolicyProvider>
                <url>ldap://<LDAP-Server-URL></url>
                <bindDn>uid=admin,ou=users,dc=example,dc=com</bindDn>
                <password>password</password>
            </ldapPolicyProvider>
        </policyProvider>
    </authorizers>
    
  2. NiFi Authorizer Configuration Details:
    • User Group Provider: এখানে LDAP এর মাধ্যমে ইউজার গ্রুপ নির্ধারণ করা হয়।
    • Policy Provider: এখানে ইউজারের অ্যাক্সেস পলিসি কনফিগার করা হয়।

২.২ Access Policies (Access Control)

NiFi তে ব্যবহারকারীদের নির্দিষ্ট ফিচার বা রিসোর্সের উপর অ্যাক্সেস কন্ট্রোল পলিসি কনফিগার করতে হয়। NiFi UI তে পলিসি সেট করার জন্য আপনি সহজেই পলিসি এডিটর ব্যবহার করতে পারেন।

  • Access Policy Types:
    • Read: ইউজারের জন্য ডেটা পড়ার অনুমতি।
    • Write: ইউজারের জন্য ডেটা লেখার অনুমতি।
    • Execute: ইউজারের জন্য প্রোসেস চালানোর অনুমতি।

NiFi UI তে গিয়ে আপনাকে অ্যাক্সেস পলিসি নির্ধারণ করতে হবে, যেখানে ইউজার বা গ্রুপ নির্বাচন করে নির্দিষ্ট রিসোর্সে অনুমতি প্রদান করতে পারবেন।


৩. NiFi UI তে User Access Configuration

NiFi তে ইউজার অ্যাক্সেস কনফিগারেশন করার জন্য UI তে কিছু স্টেপ অনুসরণ করতে হবে:

  1. UI এ লগইন করুন: লগইন করার পর, "Access Policy" মেনু তে গিয়ে আপনি ইউজার এবং গ্রুপের পলিসি নির্ধারণ করতে পারবেন।
  2. User and Group Creation:
    • Admin User: প্রাথমিকভাবে প্রশাসনিক ইউজার তৈরি করুন।
    • Standard User: নিয়মিত ইউজার তৈরি করে তাদের অ্যাক্সেস পলিসি নির্ধারণ করুন।
  3. Access Control List (ACL): ইউজার বা গ্রুপের জন্য কনফিগার করা অ্যাক্সেস কন্ট্রোল লিস্টের মাধ্যমে বিভিন্ন রিসোর্সের জন্য পলিসি সেট করুন।

সারাংশ

অ্যাপাচি নিফাই তে ইউজার অথেন্টিকেশন এবং অথোরাইজেশন কনফিগারেশন নিশ্চিত করে, যাতে আপনি নিরাপদে এবং দক্ষভাবে ডেটা প্রবাহ পরিচালনা করতে পারেন। LDAP, Kerberos, এবং NiFi এর মধ্যে একাধিক ইউজার গ্রুপ এবং পলিসি ব্যবস্থাপনা এর মাধ্যমে আপনি ইউজারদের অ্যাক্সেস নির্ধারণ করতে পারবেন। NiFi UI এর মাধ্যমে সহজেই এই সেটিংস পরিবর্তন এবং কাস্টমাইজ করা যায়, যা আপনাকে নিরাপদ ডেটা প্রবাহ পরিচালনায় সহায়ক হবে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion